<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 什么时候使用箭头函数
        // setTimeout(function(){
        //     console.log(this)   //Window对象
        // },1000)

        // setTimeout(()=>{
        //     console.log(this)  //Window对象
        // },1000)

     // 结论：箭头函数中的this是如何查找的？
    //  向外层作用域中，一层层查找this，直到有this的定义
    //  引用的是最近作用域中的this

        // const obj = {
        //     aaa(){
        //         setTimeout(function(){
        //             console.log(this);  //Window对象
        //         })
        //         console.log(this)  //obj对象 
        //         setTimeout(()=>{
        //             console.log(this)  //obj对象
        //         })
        //     },
            
        // }
        // obj.aaa();


        const obj = {
            aaa(){
                setTimeout(function(){
                    setTimeout(function(){
                        console.log(this)   //Window对象
                    })
                    setTimeout(() =>{
                        console.log(this)   //Window对象
                    })
                })
                console.log(this)  //obj对象 
                setTimeout(()=>{
                    setTimeout(function(){
                        console.log(this)  //Window对象
                    })
                    setTimeout(() =>{
                        console.log(this)  //obj对象 
                    })
                })
            },
            
        }
        obj.aaa();
    </script>
</body>
</html>